﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace Android_Helper.android
{
    public class RadioButton2Tab
    {
        public static string getLayoutTab()
        {
            StringBuilder sb = new StringBuilder();
            sb.AppendLine("<RadioGroup");
            sb.AppendLine("        android:layout_width=\"match_parent\"");
            sb.AppendLine("        android:layout_height=\"wrap_content\"");
            sb.AppendLine("        android:orientation=\"horizontal\"");
            sb.AppendLine("		android:id=\"@+id/rb_TabContainer\"");
            sb.AppendLine("		>");
            sb.AppendLine("");
            sb.AppendLine("        <RadioButton");
            sb.AppendLine("                android:layout_width=\"wrap_content\"");
            sb.AppendLine("                android:layout_height=\"wrap_content\"");
            sb.AppendLine("                android:button=\"@null\"");
            sb.AppendLine("                android:padding=\"@dimen/fw_mgnTop1\"");
            sb.AppendLine("                android:id=\"@+id/rb_Tab01\"");
            sb.AppendLine("                android:text=\"节点一\"");
            sb.AppendLine("                />");
            sb.AppendLine("");
            sb.AppendLine("        <RadioButton");
            sb.AppendLine("                android:layout_width=\"wrap_content\"");
            sb.AppendLine("                android:layout_height=\"wrap_content\"");
            sb.AppendLine("                android:button=\"@null\"");
            sb.AppendLine("                android:padding=\"@dimen/fw_mgnTop1\"");
            sb.AppendLine("                android:id=\"@+id/rb_Tab02\"");
            sb.AppendLine("                android:text=\"节点二\"");
            sb.AppendLine("                />");
            sb.AppendLine("        <RadioButton");
            sb.AppendLine("                android:layout_width=\"wrap_content\"");
            sb.AppendLine("                android:layout_height=\"wrap_content\"");
            sb.AppendLine("                android:button=\"@null\"");
            sb.AppendLine("                android:padding=\"@dimen/fw_mgnTop1\"");
            sb.AppendLine("                android:id=\"@+id/rb_Tab03\"");
            sb.AppendLine("                android:text=\"节点三\"");
            sb.AppendLine("                />");
            sb.AppendLine("");
            sb.AppendLine("        <RadioButton");
            sb.AppendLine("                android:layout_width=\"wrap_content\"");
            sb.AppendLine("                android:layout_height=\"wrap_content\"");
            sb.AppendLine("                android:button=\"@null\"");
            sb.AppendLine("                android:padding=\"@dimen/fw_mgnTop1\"");
            sb.AppendLine("                android:id=\"@+id/rb_Tab04\"");
            sb.AppendLine("                android:text=\"节点四\"");
            sb.AppendLine("                />");
            sb.AppendLine("		");
            sb.AppendLine("		<RadioButton");
            sb.AppendLine("                android:layout_width=\"wrap_content\"");
            sb.AppendLine("                android:layout_height=\"wrap_content\"");
            sb.AppendLine("                android:button=\"@null\"");
            sb.AppendLine("                android:padding=\"@dimen/fw_mgnTop1\"");
            sb.AppendLine("                android:id=\"@+id/rb_Tab05\"");
            sb.AppendLine("                android:text=\"节点五\"");
            sb.AppendLine("                />");
            sb.AppendLine("    </RadioGroup>");
            sb.AppendLine("");
            sb.AppendLine("    <android.support.v4.view.ViewPager");
            sb.AppendLine("        android:layout_width=\"match_parent\"");
            sb.AppendLine("        android:layout_height=\"match_parent\"");
            sb.AppendLine("        android:id=\"@+id/viewPager\"");
            sb.AppendLine("        >");
            sb.AppendLine("");
            sb.AppendLine("    </android.support.v4.view.ViewPager>");
            return sb.ToString();

        }

        public static string getCodeTab()
        {
            StringBuilder sb = new StringBuilder();
            sb.AppendLine("声名：");
            sb.AppendLine("列表数组：");
            sb.AppendLine("");
            sb.AppendLine("protected RadioGroup rbTabContainer;");
            sb.AppendLine("protected ViewPager viewPager;");
            sb.AppendLine(" //节点一");
            sb.AppendLine("protected RadioButton rbTab01;");
            sb.AppendLine(" //节点二");
            sb.AppendLine("protected RadioButton rbTab02;");
            sb.AppendLine(" //节点三");
            sb.AppendLine("protected RadioButton rbTab03;");
            sb.AppendLine(" //节点四");
            sb.AppendLine("protected RadioButton rbTab04;");
            sb.AppendLine(" //节点五");
            sb.AppendLine("protected RadioButton rbTab05;");
            sb.AppendLine("");
            sb.AppendLine("List<RadioButton> tabs;");
            sb.AppendLine("List<FragmentBase> fragments;");
            sb.AppendLine("List<String> tabTitles;");
            sb.AppendLine("int activeTabIndex  = 0;");
            sb.AppendLine("");
            sb.AppendLine("");
            sb.AppendLine("initView:");
            sb.AppendLine("llContainer = findViewById(R.id.ll_Container);");
            sb.AppendLine("viewPager = findViewById(R.id.viewPager);");
            sb.AppendLine("rbTabContainer = findViewById(R.id.rb_TabContainer);");
            sb.AppendLine("        //节点一");
            sb.AppendLine("rbTab01 = findViewById(R.id.rb_Tab01);");
            sb.AppendLine("        //节点二");
            sb.AppendLine("rbTab02 = findViewById(R.id.rb_Tab02);");
            sb.AppendLine("        //节点三");
            sb.AppendLine("rbTab03 = findViewById(R.id.rb_Tab03);");
            sb.AppendLine("        //节点四");
            sb.AppendLine("rbTab04 = findViewById(R.id.rb_Tab04);");
            sb.AppendLine("        //节点五");
            sb.AppendLine("rbTab05 = findViewById(R.id.rb_Tab05);");
            sb.AppendLine("");
            sb.AppendLine("fragments = new ArrayList<>();");
            sb.AppendLine("fragments.add(new FragmentBase1());");
            sb.AppendLine("fragments.add(new FragmentBase2());");
            sb.AppendLine("fragments.add(new FragmentBase3());");
            sb.AppendLine("fragments.add(new FragmentBase4());");
            sb.AppendLine("viewPager.setOffscreenPageLimit(fragments.size());");
            sb.AppendLine("viewPager.setAdapter(new FragmentPagerAdapter(getChildFragmentManager()) {");
            sb.AppendLine("    @Override");
            sb.AppendLine("    public Fragment getItem(int position) {");
            sb.AppendLine("        return fragments.get(position);");
            sb.AppendLine("    }");
            sb.AppendLine("");
            sb.AppendLine("    @Override");
            sb.AppendLine("    public int getCount() {");
            sb.AppendLine("        return fragments.size();");
            sb.AppendLine("    }");
            sb.AppendLine("});");
            sb.AppendLine("");
            sb.AppendLine("tabs = new ArrayList<>();");
            sb.AppendLine("tabTitles = new ArrayList<>();");
            sb.AppendLine("initTabs();");
            sb.AppendLine("");
            sb.AppendLine("private void initTabs()");
            sb.AppendLine("    {");
            sb.AppendLine("        tabTitles.add(\"节点一\");");
            sb.AppendLine("        tabTitles.add(\"节点二\");");
            sb.AppendLine("        tabTitles.add(\"节点三\");");
            sb.AppendLine("        tabTitles.add(\"节点四\");");
            sb.AppendLine("        tabTitles.add(YJFConstant.EMPTY_STRING);");
            sb.AppendLine("");
            sb.AppendLine("		tabs.add(rbTab01);");
            sb.AppendLine("        tabs.add(rbTab02);");
            sb.AppendLine("        tabs.add(rbTab03);");
            sb.AppendLine("        tabs.add(rbTab04);");
            sb.AppendLine("        tabs.add(rbTab05);");
            sb.AppendLine("        ");
            sb.AppendLine("        for (int i=0; i<tabs.size(); i++)");
            sb.AppendLine("        {");
            sb.AppendLine("            tabs.get(i).setText(tabTitles.get(i));");
            sb.AppendLine("        }");
            sb.AppendLine("    }");
            sb.AppendLine("");
            sb.AppendLine("");
            sb.AppendLine("private void setTabActive(int tabIndex)");
            sb.AppendLine("{");
            sb.AppendLine("activeTabIndex = tabIndex;");
            sb.AppendLine("	for (int i=0; i<tabs.size(); i++)");
            sb.AppendLine("        {");
            sb.AppendLine("            tabs.get(i).setTextColor(getResources().getColor(android.R.color.darker_gray));");
            sb.AppendLine("            ViewUtils.setVisible(tabs.get(i), 0!=tabTitles.get(i).compareTo(YJFConstant.EMPTY_STRING));");
            sb.AppendLine("        }");
            sb.AppendLine("");
            sb.AppendLine("        tabs.get(tabIndex).setTextColor(getResources().getColor(R.color.colorPrimary));");
            sb.AppendLine("        tabs.get(tabIndex).setChecked(true);");
            sb.AppendLine("}");
            sb.AppendLine("");
            sb.AppendLine("initEvents()");
            sb.AppendLine("{");

            sb.AppendLine("for (int i=0; i<tabs.size(); i++)");
            sb.AppendLine("{");
            sb.AppendLine("    int finalI = i;");
            sb.AppendLine("    tabs.get(i).setOnClickListener(view -> {");
            sb.AppendLine("        setTabActive(finalI);");
            sb.AppendLine("        viewPager.setCurrentItem(finalI);");
            sb.AppendLine("    });");
            sb.AppendLine("}");
            sb.AppendLine("");
            sb.AppendLine("viewPager.addOnPageChangeListener(new ViewPager.OnPageChangeListener() {");
            sb.AppendLine("    @Override");
            sb.AppendLine("    public void onPageScrolled(int position, float positionOffset, int positionOffsetPixels) {");
            sb.AppendLine("");
            sb.AppendLine("    }");
            sb.AppendLine("");
            sb.AppendLine("    @Override");
            sb.AppendLine("    public void onPageSelected(int position) {");
            sb.AppendLine("        if (activeTabIndex==position)");
            sb.AppendLine("        {");
            sb.AppendLine("            return;");
            sb.AppendLine("        }");
            sb.AppendLine("        setTabActive(position);");
            sb.AppendLine("    }");
            sb.AppendLine("");
            sb.AppendLine("    @Override");
            sb.AppendLine("    public void onPageScrollStateChanged(int state) {");
            sb.AppendLine("");
            sb.AppendLine("    }");
            sb.AppendLine("});");
            sb.AppendLine("");

            sb.AppendLine("}");
            sb.AppendLine("");
            return sb.ToString();

        }

        /// <summary>
        /// 下面带小横条
        /// </summary>
        /// <returns></returns>
        public static string getLayoutTabAndLine()
        {
            StringBuilder sb = new StringBuilder();
            sb.AppendLine("<RadioGroup");
            sb.AppendLine("        android:layout_width=\"match_parent\"");
            sb.AppendLine("        android:layout_height=\"wrap_content\"");
            sb.AppendLine("        android:orientation=\"horizontal\"");
            sb.AppendLine("		android:id=\"@+id/rb_TabContainer\"");
            sb.AppendLine("		>");
            sb.AppendLine("");
            sb.AppendLine("        <LinearLayout");
            sb.AppendLine("            android:layout_width=\"0dp\"");
            sb.AppendLine("            android:layout_height=\"wrap_content\"");
            sb.AppendLine("            android:layout_weight=\"1\"");
            sb.AppendLine("            android:gravity=\"center_horizontal\"");
            sb.AppendLine("            android:orientation=\"vertical\">");
            sb.AppendLine("");
            sb.AppendLine("            <RadioButton");
            sb.AppendLine("                android:layout_width=\"wrap_content\"");
            sb.AppendLine("                android:layout_height=\"wrap_content\"");
            sb.AppendLine("                android:button=\"@null\"");
            sb.AppendLine("                android:padding=\"@dimen/fw_mgnTop1\"");
            sb.AppendLine("                android:id=\"@+id/rb_Tab01\"");
            sb.AppendLine("                android:text=\"节点一\"");
            sb.AppendLine("                />");
            sb.AppendLine("");
            sb.AppendLine("            <View");
            sb.AppendLine("                android:layout_width=\"match_parent\"");
            sb.AppendLine("                android:layout_height=\"2dp\"");
            sb.AppendLine("                android:id=\"@+id/line_Tab01\"");
            sb.AppendLine("                android:background=\"@color/colorPrimary\"/>");
            sb.AppendLine("");
            sb.AppendLine("        </LinearLayout>");
            sb.AppendLine("");
            sb.AppendLine("        <LinearLayout");
            sb.AppendLine("            android:layout_width=\"0dp\"");
            sb.AppendLine("            android:layout_height=\"wrap_content\"");
            sb.AppendLine("            android:layout_weight=\"1\"");
            sb.AppendLine("            android:gravity=\"center_horizontal\"");
            sb.AppendLine("            android:orientation=\"vertical\">");
            sb.AppendLine("");
            sb.AppendLine("            <RadioButton");
            sb.AppendLine("                android:layout_width=\"wrap_content\"");
            sb.AppendLine("                android:layout_height=\"wrap_content\"");
            sb.AppendLine("                android:button=\"@null\"");
            sb.AppendLine("                android:padding=\"@dimen/fw_mgnTop1\"");
            sb.AppendLine("                android:id=\"@+id/rb_Tab02\"");
            sb.AppendLine("                android:text=\"节点二\"");
            sb.AppendLine("                />");
            sb.AppendLine("");
            sb.AppendLine("            <View");
            sb.AppendLine("                android:layout_width=\"match_parent\"");
            sb.AppendLine("                android:layout_height=\"2dp\"");
            sb.AppendLine("                android:id=\"@+id/line_Tab02\"");
            sb.AppendLine("                android:background=\"@color/colorPrimary\"/>");
            sb.AppendLine("");
            sb.AppendLine("        </LinearLayout>");
            sb.AppendLine("");
            sb.AppendLine("        <LinearLayout");
            sb.AppendLine("            android:layout_width=\"0dp\"");
            sb.AppendLine("            android:layout_height=\"wrap_content\"");
            sb.AppendLine("            android:layout_weight=\"1\"");
            sb.AppendLine("            android:gravity=\"center_horizontal\"");
            sb.AppendLine("            android:orientation=\"vertical\">");
            sb.AppendLine("");
            sb.AppendLine("            <RadioButton");
            sb.AppendLine("                android:layout_width=\"wrap_content\"");
            sb.AppendLine("                android:layout_height=\"wrap_content\"");
            sb.AppendLine("                android:button=\"@null\"");
            sb.AppendLine("                android:padding=\"@dimen/fw_mgnTop1\"");
            sb.AppendLine("                android:id=\"@+id/rb_Tab03\"");
            sb.AppendLine("                android:text=\"节点三\"");
            sb.AppendLine("                />");
            sb.AppendLine("");
            sb.AppendLine("            <View");
            sb.AppendLine("                android:layout_width=\"match_parent\"");
            sb.AppendLine("                android:layout_height=\"2dp\"");
            sb.AppendLine("                android:id=\"@+id/line_Tab03\"");
            sb.AppendLine("                android:background=\"@color/colorPrimary\"/>");
            sb.AppendLine("");
            sb.AppendLine("        </LinearLayout>");
            sb.AppendLine("");
            sb.AppendLine("        <LinearLayout");
            sb.AppendLine("            android:layout_width=\"0dp\"");
            sb.AppendLine("            android:layout_height=\"wrap_content\"");
            sb.AppendLine("            android:layout_weight=\"1\"");
            sb.AppendLine("            android:gravity=\"center_horizontal\"");
            sb.AppendLine("            android:orientation=\"vertical\">");
            sb.AppendLine("");
            sb.AppendLine("            <RadioButton");
            sb.AppendLine("                android:layout_width=\"wrap_content\"");
            sb.AppendLine("                android:layout_height=\"wrap_content\"");
            sb.AppendLine("                android:button=\"@null\"");
            sb.AppendLine("                android:padding=\"@dimen/fw_mgnTop1\"");
            sb.AppendLine("                android:id=\"@+id/rb_Tab04\"");
            sb.AppendLine("                android:text=\"节点四\"");
            sb.AppendLine("                />");
            sb.AppendLine("");
            sb.AppendLine("            <View");
            sb.AppendLine("                android:layout_width=\"match_parent\"");
            sb.AppendLine("                android:layout_height=\"2dp\"");
            sb.AppendLine("                android:id=\"@+id/line_Tab04\"");
            sb.AppendLine("                android:background=\"@color/colorPrimary\"/>");
            sb.AppendLine("");
            sb.AppendLine("        </LinearLayout>");
            sb.AppendLine("		");
            sb.AppendLine("		<LinearLayout");
            sb.AppendLine("            android:layout_width=\"0dp\"");
            sb.AppendLine("            android:layout_height=\"wrap_content\"");
            sb.AppendLine("            android:layout_weight=\"1\"");
            sb.AppendLine("            android:gravity=\"center_horizontal\"");
            sb.AppendLine("            android:orientation=\"vertical\">");
            sb.AppendLine("");
            sb.AppendLine("            <RadioButton");
            sb.AppendLine("                android:layout_width=\"wrap_content\"");
            sb.AppendLine("                android:layout_height=\"wrap_content\"");
            sb.AppendLine("                android:button=\"@null\"");
            sb.AppendLine("                android:padding=\"@dimen/fw_mgnTop1\"");
            sb.AppendLine("                android:id=\"@+id/rb_Tab05\"");
            sb.AppendLine("                android:text=\"节点五\"");
            sb.AppendLine("                />");
            sb.AppendLine("");
            sb.AppendLine("            <View");
            sb.AppendLine("                android:layout_width=\"match_parent\"");
            sb.AppendLine("                android:layout_height=\"2dp\"");
            sb.AppendLine("                android:id=\"@+id/line_Tab05\"");
            sb.AppendLine("                android:background=\"@color/colorPrimary\"/>");
            sb.AppendLine("");
            sb.AppendLine("        </LinearLayout>");
            sb.AppendLine("    </RadioGroup>");
            sb.AppendLine("");
            sb.AppendLine("    <android.support.v4.view.ViewPager");
            sb.AppendLine("        android:layout_width=\"match_parent\"");
            sb.AppendLine("        android:layout_height=\"match_parent\"");
            sb.AppendLine("        android:id=\"@+id/viewPager\"");
            sb.AppendLine("        >");
            sb.AppendLine("");
            sb.AppendLine("    </android.support.v4.view.ViewPager>");
            return sb.ToString();

        }

        public static string getCodeTabAndLine()
        {
            StringBuilder sb = new StringBuilder();
            sb.AppendLine("声名：");
            sb.AppendLine("列表数组：");
            sb.AppendLine("");
            sb.AppendLine("protected LinearLayout llContainer;");
            sb.AppendLine("    protected ViewPager viewPager;");
            sb.AppendLine("    protected RadioGroup rbTabContainer;");
            sb.AppendLine("    //节点一");
            sb.AppendLine("    protected LinearLayout llTab01;");
            sb.AppendLine("    protected RadioButton rbTab01;");
            sb.AppendLine("    protected View lineTab01;");
            sb.AppendLine("    //节点二");
            sb.AppendLine("    protected LinearLayout llTab02;");
            sb.AppendLine("    protected RadioButton rbTab02;");
            sb.AppendLine("    protected View lineTab02;");
            sb.AppendLine("    //节点三");
            sb.AppendLine("    protected LinearLayout llTab03;");
            sb.AppendLine("    protected RadioButton rbTab03;");
            sb.AppendLine("    protected View lineTab03;");
            sb.AppendLine("    //节点四");
            sb.AppendLine("    protected LinearLayout llTab04;");
            sb.AppendLine("    protected RadioButton rbTab04;");
            sb.AppendLine("    protected View lineTab04;");
            sb.AppendLine("    //节点五");
            sb.AppendLine("    protected LinearLayout llTab05;");
            sb.AppendLine("    protected RadioButton rbTab05;");
            sb.AppendLine("    protected View lineTab05;");
            sb.AppendLine("");
            sb.AppendLine("");
            sb.AppendLine("    List<RadioButton> tabs;");
            sb.AppendLine("    List<View> tabLines;");
            sb.AppendLine("    List<FragmentBase> fragments;");
            sb.AppendLine("    List<String> tabTitles;");
            sb.AppendLine("    List<LinearLayout> tabParents;");
            sb.AppendLine("int activeTabIndex  = 0;");
            sb.AppendLine("");
            sb.AppendLine("");
            sb.AppendLine("initView:");

            sb.AppendLine("llContainer = findViewById(R.id.ll_Container);");
            sb.AppendLine("        viewPager = findViewById(R.id.viewPager);");
            sb.AppendLine("        tvTitle = findViewById(R.id.tvTitle);");
            sb.AppendLine("        //节点一");
            sb.AppendLine("        llTab01 = findViewById(R.id.ll_Tab01);");
            sb.AppendLine("        rbTab01 = findViewById(R.id.rb_Tab01);");
            sb.AppendLine("        lineTab01 = findViewById(R.id.line_Tab01);");
            sb.AppendLine("        //节点二");
            sb.AppendLine("        llTab02 = findViewById(R.id.ll_Tab02);");
            sb.AppendLine("        rbTab02 = findViewById(R.id.rb_Tab02);");
            sb.AppendLine("        lineTab02 = findViewById(R.id.line_Tab02);");
            sb.AppendLine("        //节点三");
            sb.AppendLine("        llTab03 = findViewById(R.id.ll_Tab03);");
            sb.AppendLine("        rbTab03 = findViewById(R.id.rb_Tab03);");
            sb.AppendLine("        lineTab03 = findViewById(R.id.line_Tab03);");
            sb.AppendLine("        //节点四");
            sb.AppendLine("        llTab04 = findViewById(R.id.ll_Tab04);");
            sb.AppendLine("        rbTab04 = findViewById(R.id.rb_Tab04);");
            sb.AppendLine("        lineTab04 = findViewById(R.id.line_Tab04);");
            sb.AppendLine("        //节点五");
            sb.AppendLine("        llTab05 = findViewById(R.id.ll_Tab05);");
            sb.AppendLine("        rbTab05 = findViewById(R.id.rb_Tab05);");
            sb.AppendLine("        lineTab05 = findViewById(R.id.line_Tab05);");
            sb.AppendLine("");
            sb.AppendLine("tabs = new ArrayList<>();");
            sb.AppendLine("tabLines = new ArrayList<>();");
            sb.AppendLine("fragments = new ArrayList<>();");
            sb.AppendLine("tabTitles = new ArrayList<>();");
            sb.AppendLine("tabParents = new ArrayList<>();");
            sb.AppendLine("initTabs();");

            sb.AppendLine("fragments = new ArrayList<>();");
            sb.AppendLine("fragments.add(new FragmentBase1());");
            sb.AppendLine("fragments.add(new FragmentBase2());");
            sb.AppendLine("fragments.add(new FragmentBase3());");
            sb.AppendLine("fragments.add(new FragmentBase4());");
            sb.AppendLine("");
            sb.AppendLine("viewPager.setAdapter(new FragmentPagerAdapter(getChildFragmentManager()) {");
            sb.AppendLine("    @Override");
            sb.AppendLine("    public Fragment getItem(int position) {");
            sb.AppendLine("        return fragments.get(position);");
            sb.AppendLine("    }");
            sb.AppendLine("");
            sb.AppendLine("    @Override");
            sb.AppendLine("    public int getCount() {");
            sb.AppendLine("        return fragments.size();");
            sb.AppendLine("    }");
            sb.AppendLine("});");
            sb.AppendLine("");

            sb.AppendLine("");
            sb.AppendLine("private void initTabs()");
            sb.AppendLine("    {");
            sb.AppendLine("        tabTitles.add(\"节点一\");");
            sb.AppendLine("        tabTitles.add(\"节点二\");");
            sb.AppendLine("        tabTitles.add(\"节点三\");");
            sb.AppendLine("        tabTitles.add(\"节点四\");");
            sb.AppendLine("        tabTitles.add(YJFConstant.EMPTY_STRING);");
            sb.AppendLine("");
            sb.AppendLine("		tabs.add(rbTab01);");
            sb.AppendLine("        tabs.add(rbTab02);");
            sb.AppendLine("        tabs.add(rbTab03);");
            sb.AppendLine("        tabs.add(rbTab04);");
            sb.AppendLine("        tabs.add(rbTab05);");
            sb.AppendLine("");
            sb.AppendLine("        tabLines.add(lineTab01);");
            sb.AppendLine("        tabLines.add(lineTab02);");
            sb.AppendLine("        tabLines.add(lineTab03);");
            sb.AppendLine("        tabLines.add(lineTab04);");
            sb.AppendLine("        tabLines.add(lineTab05);");
            sb.AppendLine("");
            sb.AppendLine("        tabParents.add(llTab01);");
            sb.AppendLine("        tabParents.add(llTab02);");
            sb.AppendLine("        tabParents.add(llTab03);");
            sb.AppendLine("        tabParents.add(llTab04);");
            sb.AppendLine("        tabParents.add(llTab05);");
            sb.AppendLine("		");
            sb.AppendLine("        for (int i=0; i<tabs.size(); i++)");
            sb.AppendLine("        {");
            sb.AppendLine("            tabs.get(i).setText(tabTitles.get(i));");
            sb.AppendLine("        }");
            sb.AppendLine("    }");
            sb.AppendLine("");
            sb.AppendLine("");
            sb.AppendLine("private void setTabActive(int tabIndex)");
            sb.AppendLine("{");
            sb.AppendLine("activeTabIndex = actIndex;");
            sb.AppendLine("	for (int i=0; i<tabs.size(); i++)");
            sb.AppendLine("        {");
            sb.AppendLine("            tabs.get(i).setTextColor(getResources().getColor(android.R.color.darker_gray));");
            sb.AppendLine("            tabLines.get(i).setBackgroundColor(getResources().getColor(android.R.color.darker_gray));");
            sb.AppendLine("            ViewUtils.setVisible(tabParents.get(i), 0!=tabTitles.get(i).compareTo(YJFConstant.EMPTY_STRING));");
            sb.AppendLine("        }");
            sb.AppendLine("");
            sb.AppendLine("        tabs.get(tabIndex).setTextColor(getResources().getColor(R.color.colorPrimary));");
            sb.AppendLine("        tabLines.get(tabIndex).setBackgroundColor(getResources().getColor(R.color.colorPrimary));");
            sb.AppendLine("}");
            sb.AppendLine("");
            sb.AppendLine("initEvents()");
            sb.AppendLine("{");
            sb.AppendLine("rbTabContainer.setOnCheckedChangeListener((radioGroup, index) -> {");
            sb.AppendLine("                    setTabActive(index);");
            sb.AppendLine("                    viewPager.setCurrentItem(index);");
            sb.AppendLine("                }");
            sb.AppendLine("        );");

            sb.AppendLine("for (int i=0; i<tabs.size(); i++)");
            sb.AppendLine("{");
            sb.AppendLine("    int finalI = i;");
            sb.AppendLine("    tabs.get(i).setOnClickListener(view -> {");
            sb.AppendLine("        setTabActive(finalI);");
            sb.AppendLine("        viewPager.setCurrentItem(finalI);");
            sb.AppendLine("    });");
            sb.AppendLine("}");
            sb.AppendLine("");
            sb.AppendLine("viewPager.addOnPageChangeListener(new ViewPager.OnPageChangeListener() {");
            sb.AppendLine("    @Override");
            sb.AppendLine("    public void onPageScrolled(int position, float positionOffset, int positionOffsetPixels) {");
            sb.AppendLine("");
            sb.AppendLine("    }");
            sb.AppendLine("");
            sb.AppendLine("    @Override");
            sb.AppendLine("    public void onPageSelected(int position) {");
            sb.AppendLine("        if (activeTabIndex==position)");
            sb.AppendLine("        {");
            sb.AppendLine("            return;");
            sb.AppendLine("        }");
            sb.AppendLine("        setTabActive(position);");
            sb.AppendLine("    }");
            sb.AppendLine("");
            sb.AppendLine("    @Override");
            sb.AppendLine("    public void onPageScrollStateChanged(int state) {");
            sb.AppendLine("");
            sb.AppendLine("    }");
            sb.AppendLine("});");
            sb.AppendLine("");
            sb.AppendLine("}");
            return sb.ToString();

        }
    }
}
